題目介紹:
給定一個 𝑛×𝑛的二維矩陣(方陣),將矩陣順時針旋轉 90 度。旋轉必須就地進行,也就是不能使用額外的矩陣空間,只能修改原矩陣。題目考驗對二維陣列索引的操作與對稱關係的理解,通常可以透過 先轉置再水平翻轉或逐圈旋轉的方式完成。
解題流程:
先將矩陣沿主對角線轉置,然後水平翻轉每一行,即可就地將 n×n 矩陣順時針旋轉 90 度。
程式碼及執行結果截圖:
學習心得:
這題讓我學習到操作二維矩陣時索引的重要性。最開始想用額外矩陣複製,但發現題目要求就地旋轉,於是改用轉置加水平翻轉法。透過先對角線轉置,再水平翻轉,每個元素都能正確移到旋轉後的位置,過程中加深對行列互換和索引計算的理解。此外,這題也訓練了我的空間優化思維,學會在不增加額外空間的前提下完成操作。
延伸邏輯時事面:
1.影像處理與旋轉:矩陣旋轉的概念常應用在影像或遊戲開發中,例如手機相片旋轉或遊戲地圖操作。
2.資料就地修改與資源優化:就地旋轉法強調空間效率,與現代大數據處理或記憶體受限裝置的資源管理邏輯相關。
3.AI 與矩陣運算:深度學習中大量使用矩陣運算,理解矩陣旋轉、轉置對於影像辨識、卷積運算等應用有實際幫助。